package com.zjsru.oneDay202203;

import java.util.Arrays;

/**
 * @Author: likew
 * @Date: 2022/3/28
 *
 * 交替位二进制数
 *
 * 输入：n = 5
 * 输出：true
 * 解释：5 的二进制表示是：101
 *
 * 输入：n = 7
 * 输出：false
 * 解释：7 的二进制表示是：111.
 *
 */
public class hasAlternatingBits {
    public boolean hasAlternatingBits(int n) {
        int cur = -1;
        while(n!=0){
            int u = n & 1;
            if((cur^u) == 0){
                return false;
            }
            cur = u;
            n >>= 1;
        }
        return true;
    }
    
    public static void main(String[] args) {
        hasAlternatingBits hasAlternatingBits = new hasAlternatingBits();
        int n = 5;
        System.out.println(hasAlternatingBits.hasAlternatingBits(n));
    }
}
